package com.myschool.server.manager;

import org.myschool.common.exception.ApplicationException;
import org.springframework.stereotype.Service;

import com.myschool.server.model.BaseEntity;

@Service
public interface Manager<T extends BaseEntity> {

	public T create(T entity) throws ApplicationException;

	public T update(T entity) throws ApplicationException;

	public T retrieve(T entity) throws ApplicationException;

	public T retrieve(Long entityId) throws ApplicationException;

	public void delete(T entity) throws ApplicationException;

	public void delete(Long entityId) throws ApplicationException;

}
